package top.csh215.cmd2.controller;


import cn.dev33.satoken.stp.StpLogic;
import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.web.bind.annotation.*;
import top.csh215.cmd2.common.Result;
import top.csh215.cmd2.dto.FrontLoginDto;

@RestController
@RequestMapping("/api")
@CrossOrigin
public class FrontController {


    @Resource
    @Qualifier("FrontStpUtil")
    private StpLogic frontStpUtil;  // 注入前端专用的StpLogic

    @PostMapping("/login")
    public Result<String> login(@RequestBody FrontLoginDto frontLoginDto) {
        // 验证前端用户
        // ...

        String username = frontLoginDto.getUsername();
        String password = frontLoginDto.getPassword();

        if (username == null || password == null) {
            return Result.error("用户名或密码不能为空");
        }
        // 这里可以添加实际的用户验证逻辑，比如查询数据库等
        if (!"csh".equals(username) || !"123456".equals(password)) {
            return Result.error("用户名或密码错误");
        }

        // 假设ID为10001
        frontStpUtil.login(10001); // 使用front-token
        return Result.success("登录成功");
    }


    /**
     * 用户登出
     * @return 登出结果
     */
    @PostMapping("/logout")
    public Result<String> logout() {
        frontStpUtil.logout();
        return Result.success("登出成功");
    }

}
